package cn.biplam.front.template.callback;

import cn.biplam.common.wrapper.ErrorMessage;

/**
 * 生成树时用到得回调函数接口
 *  1.根据取树的类型，返回当前树的索引的operatorId
 *  2.根据树的节点类型和是否是叶子节点返回节点图片名称
 *  3.根据树的节点类型、是否是叶子节点、节点ID 返回节点的左键脚本
 * @author WangSong 2009-6-5下午03:11:34
 * @version 1.0
 */
public interface TreeCallBack {
	
	/**
	 * 根据树的节点类型和是否是叶子节点返回节点图片名称
	 * @param operatorType  节点操作类型
	 * @param isLeaf        是否是叶子节点
	 * @return  节点图片名称
	 */
	public String getNodePic(String operatorType,boolean isLeaf) throws ErrorMessage;
	
	/**
	 * 根据树的节点类型、是否是叶子节点、节点ID 返回节点的左键脚本
	 * @param operatorType  节点类型
	 * @param isLeaf        是否是叶子节点
	 * @param nodeId        节点ID
	 * @return  节点图片名称
	 */
	public String getLeftClickScript(String operatorType,
									 boolean isLeafs,
									 String nodeId,
									 int level,
									 int levelDown)  throws ErrorMessage ;
	
	/**
	 * 取左键的目标容器id
	 * @return
	 */
	public String getLeftClickTargetId();
	
	/**
	 * 取左键的行为id
	 * @return
	 */
	public String getLeftClickActionId();
	/**
	 * 取回调函数的业务类型
	 * @return
	 */
	public String getBusinessType();
}
